package com.fessc.develop.entity.comvo;

import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fessc.develop.utils.NatInverse;
import lombok.Data;

@Data
public class AccountSynchronVo {

    @JsonProperty("OriReqTraceId")
    String OriReqTraceId;  //原发送方流水号

    @JsonProperty("CumTp")
    String CumTp;	//用户类型：1-边民；2-边民代表；3-委托付汇代理人；4-商铺

    @JsonProperty("Name")
    String Name;	//边民姓名/商铺所属人姓名

    @JsonProperty("CrdtTp")
    String CrdtTp;	//证件类型

    @JsonProperty("CrdtNo")
    String CrdtNo;	//证件号码

    @JsonProperty("Nat")
    @JSONField(serializeUsing = NatInverse.class)
    String Nat;	//国籍

    @JsonProperty("BnkCd")
    String BnkCd;	//开户行代码

    @JsonProperty("BnkName")
    String BnkName;	//开户行名称

    @JsonProperty("BrhBnkName")
    String BrhBnkName;	//开户行支行名称

    @JsonProperty("AccNo")
    String AccNo;	//银行账号

    @JsonProperty("AccName")
    String AccName;	//开户名

    @JsonProperty("IsViAcc")
    String IsViAcc;	//开通虚拟账户：是否开通虚拟账户1-开通2-不开通

    @JsonProperty("ViAccNo")
    String ViAccNo;	//虚拟账户：虚拟账户的账户号

    @JsonProperty("ViAccLi")
    String ViAccLi;	//虚拟账户限额

    @JsonProperty("Tel")
    String Tel;	//联系电话

    @JsonProperty("OvseaInd")
    String OvseaInd;	//海外标志：签约类型为商铺时必填：1-是；0-否

    @JsonProperty("IsNRA")
    String IsNRA;	//是否NRA：若用户类型为04，则必填

    @JsonProperty("AccSts")
    String AccSts;	//账号状态：1-开户成功；2-冻结；3-销户；

    @JsonProperty("ShopId")
    String ShopId;	//商铺ID：用户类型为4时，返回商城店铺ID

    @JsonProperty("MrchNm")
    String MrchNm;	//商铺中文名称：用户类型为3和4时，需要必填，作为跨境付汇向人行报备使用

    @JsonProperty("MrchEngNm")
    String MrchEngNm;	//商铺英文名称：用户类型为3和4时，需要必填，作为跨境付汇向人行报备使用

    @JsonProperty("MrchAdr")
    String MrchAdr;	//商铺中文地址：用户类型为3和4时，需要必填，作为跨境付汇向人行报备使用

    @JsonProperty("MrchEngAdr")
    String MrchEngAdr;	//商铺英文地址：用户类型为3和4时，需要必填，作为跨境付汇向人行报备使用

}
